#ifndef QUEUE_WORKER
#define QUEUE_WORKER

#include <boost/shared_ptr.hpp>
#include <boost/thread/thread.hpp>
#include "queue.h"
#include "worker_thread.h"
#include "gen_empty.h"
#include "message.h"
#include "play_message.h"

class queue_worker : public worker_thread {
public:
	queue_worker(boost::shared_ptr<queue> q): _queue(q) {}
	~queue_worker() {}

	virtual void run();
	virtual void start();
private:
	boost::shared_ptr<queue> _queue;
	boost::shared_ptr<boost::thread> _thrd;
};

#endif
